package pers.xiaojun.boot.module.system.service.dept;

import com.baomidou.mybatisplus.extension.service.IService;
import pers.xiaojun.boot.module.system.dao.entity.dept.UserPostDO;

import java.util.Collection;
import java.util.List;

/**
 * 用户岗位服务层
 *
 * @author xiaojun
 * @since 2025-11-02
 */
public interface UserPostService extends IService<UserPostDO> {


    /**
     * 根据用户Id和岗位Id删除一批用户岗位
     *
     * @param userId  用户Id
     * @param postIds 岗位Id集合
     */
    void removeUserPostByUserIdAndPostIds(Long userId, Collection<Long> postIds);


    /**
     * 根据岗位Id删除用户岗位
     *
     * @param postId 岗位Id
     */
    void removeUserPostByPostId(Long postId);

    /**
     * 根据岗位Id删除一批用户岗位
     *
     * @param postIds 岗位Id集合
     */
    void removeUserPostByPostIds(Collection<Long> postIds);

    /**
     * 根据用户Id获取岗位Id列表
     *
     * @param userId 用户Id
     * @return 岗位Id列表
     */
    List<Long> listPostIdsByUserId(Long userId);

}
